package model

import "time"

type Message struct {
	Id         int32     `gorm:"column:id;type:int;primaryKey;not null;" json:"id"`
	CreatedAt  time.Time `gorm:"column:created_at;type:datetime;default:NULL;" json:"created_at"`
	UpdateAt   time.Time `gorm:"column:update_at;type:datetime;default:NULL;" json:"update_at"`
	DeleteAt   time.Time `gorm:"column:delete_at;type:datetime;default:NULL;" json:"delete_at"`
	ReceiverId int32     `gorm:"column:receiver_id;type:int;comment:接收者 ID;default:NULL;" json:"receiver_id"`                 // 接收者 ID
	SenderId   int32     `gorm:"column:sender_id;type:int;comment:发送者 ID;default:NULL;" json:"sender_id"`                     // 发送者 ID
	Type       int32     `gorm:"column:type;type:int;comment:消息类型:0 - 关注通知，1 - 评论通知，2 - 点赞 / 收藏通知;default:NULL;" json:"type"` // 消息类型:0 - 关注通知，1 - 评论通知，2 - 点赞 / 收藏通知
	Content    string    `gorm:"column:content;type:varchar(255);comment:内容;default:NULL;" json:"content"`                    // 内容
	SendTime   time.Time `gorm:"column:send_time;type:datetime;comment:发送时间;default:NULL;" json:"send_time"`                  // 发送时间
	IsRead     int32     `gorm:"column:is_read;type:int;comment:已读状态:0 - 未读，1 - 已读;default:NULL;" json:"is_read"`             // 已读状态:0 - 未读，1 - 已读
}

func (Message) TableName() string {
	return "message"
}
